package com.zzyq.pc.web.configure.service;

import java.util.List;

import com.zzyq.pc.common.plugin.db.PageView;
import com.zzyq.pc.web.configure.model.Information;

public interface IInformationService {

	/**
	 * 找到方案ID集合中的敏感方案
	 * 
	 * @param ifmIds
	 * @return
	 */
	List<Integer> selectSensitiveIDs(List<Integer> ifmIds);

	/**
	 * 获取团体所有方案ID
	 * 
	 * @param companyId
	 * @return
	 */
	List<Integer> selectIDsBycompanyId(Integer companyId);

	/**
	 * 获取团体的敏感方案集合
	 * 
	 * @param companyId
	 * @return
	 */
	List<Integer> selectSensitiveIDsByCompanyId(Integer companyId);

	/**
	 * 分页查询方案列表
	 * 
	 * @param map
	 * @return
	 */
	List<Information> selectInformationByCompanyId(PageView pageView);

	/**
	 * 同一团体下不允许同名，不同团体允许同名
	 * 
	 * @param map
	 * @return false:不存在同名 true： 存在同名
	 */
	boolean selectInformationNameCountByCompanyId(String ifmName, Integer ifmId);

	/**
	 * 新增
	 * 
	 * @param record
	 * @return
	 */
	boolean insert(Information record);

	/**
	 * 修改
	 * 
	 * @param record
	 * @return
	 */
	int updateByPrimaryKey(Information record);

	/**
	 * 参数过滤器
	 * 
	 * @param record
	 * @return
	 */
	Information InformationFilter(Information record);

	/**
	 * 删除方案
	 * 
	 * @param ifmId
	 * @return
	 */
	boolean deleteByPrimaryKey(Integer ifmId);

	/**
	 * 团体方案关系表新增
	 * 
	 * @param companyId
	 * @param ifmId
	 * @return
	 */
	boolean insertCompanyInformation(Integer companyId, Integer ifmId);

	/**
	 * 开启关闭方案
	 * 
	 * @param ifmId
	 * @param ifmIsdelete
	 * @return
	 */
	boolean updateInformationType(Integer ifmId, Integer ifmIsdelete);


}
